package com.hyz.yuaiagent.rag.query;

import org.springframework.ai.chat.prompt.PromptTemplate;
import org.springframework.ai.rag.generation.augmentation.ContextualQueryAugmenter;

/**
 * LoveAppContextualQueryAugmenterFactory 类用于创建一个上下文查询增强器实例，
 * 该实例专门用于处理与恋爱相关的问题查询。
 */
public class LoveAppContextualQueryAugmenterFactory {

    /**
     * 创建一个上下文查询增强器实例。
     *
     * @return 返回一个配置好的 ContextualQueryAugmenter 实例。
     */
    public static ContextualQueryAugmenter createInstance() {
        // 定义一个提示模板，用于在没有上下文信息时的响应。
        PromptTemplate emptyContextPromptTemplate = new PromptTemplate("""
                你应该输出下面的内容：
                抱歉，我只能回答恋爱相关的问题，别的没办法帮到您哦，
                有问题可以联系编程导航客服 https://codefather.cn
                """);

        // 构建并返回一个 ContextualQueryAugmenter 实例，配置不允许空上下文，并设置空上下文提示模板。
        return ContextualQueryAugmenter.builder()
                .allowEmptyContext(false)
                .emptyContextPromptTemplate(emptyContextPromptTemplate)
                .build();
    }
}
